package com.shigen.demo.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.shigen.demo.entity.UserInfo;
import com.shigen.demo.entity.req.UserInfoReq;
import java.util.List;
import org.springframework.web.multipart.MultipartFile;

public interface IUserInfoService {

  /**
   * 分页查询所有用户的数据 查询的条件为userid /username
   *
   * @param query
   * @return
   */
  IPage<UserInfo> getAllUserInfo(UserInfoReq.QueryItem query);

  UserInfo getUserInfoByUserId(Integer userid);

  /**
   * 插入用户信息，返回生成的id
   *
   * @param opBase
   * @return
   */
  Integer addUserInfo(UserInfoReq.OpBase opBase);

  /**
   * 更新用户的activite状态
   *
   * @param userid
   * @param status
   * @return
   */
  Integer updateUserInfoStatus(Integer userid, boolean status);

  /**
   * 根据userid更新用户信息
   *
   * @param opBase
   * @return
   */
  Integer updateUserInfo(UserInfoReq.OpBase opBase);

  String getUserIcon(Integer userid);

  String updateUserIcon(MultipartFile file);

  /**
   * 批量删除用户
   *
   * @param userIds
   * @return
   */
  Integer delBatch(List<Long> userIds);
}
